package com.bsoft.gol.hcs.specialist.entity;

import javax.persistence.*;
import java.math.BigDecimal;
import java.sql.Timestamp;

@Entity
@Table(name = "editor_questionnaire_title")
public class EditorQuestionnaireTitleEntity {
    private String titleId;
    private String questionnaireId;
    private byte widgetType;
    private String titleName;
    private Integer orderNum;
    private Integer titleNum;
    private BigDecimal optionGrade;
    private String titleContent;
    private Byte writeFlag;
    private String relateCodeId;
    private Byte skipFlag;
    private Byte displayLogicFlag;
    private Byte displayFlag;
    private Byte layout;
    private Byte maxOptions;
    private Byte minOptions;
    private String dictId;
    private Byte dictSelectMethod;
    private Byte optionModifyFlag;
    private Byte answerType;
    private String dataUpLimit;
    private String dataDownLimit;
    private String writeTips;
    private Byte writeOutwardType;
    private String writeWidth;
    private String writeHeight;
    private Byte rankType;
    private String uploadFileType;
    private String uploadFilesizeLimit;
    private Byte uploadNumLimit;
    private String matrixRanksNum;
    private Byte matrixNumFlag;
    private String matrixColTitle;
    private String matrixRowTitle;
    private Integer createId;
    private Timestamp createTime;

    @Id
    @Column(name = "title_id")
    public String getTitleId() {
        return titleId;
    }

    public void setTitleId(String titleId) {
        this.titleId = titleId;
    }

    @Basic
    @Column(name = "questionnaire_id")
    public String getQuestionnaireId() {
        return questionnaireId;
    }

    public void setQuestionnaireId(String questionnaireId) {
        this.questionnaireId = questionnaireId;
    }

    @Basic
    @Column(name = "widget_type")
    public byte getWidgetType() {
        return widgetType;
    }

    public void setWidgetType(byte widgetType) {
        this.widgetType = widgetType;
    }

    @Basic
    @Column(name = "title_name")
    public String getTitleName() {
        return titleName;
    }

    public void setTitleName(String titleName) {
        this.titleName = titleName;
    }

    @Basic
    @Column(name = "order_num")
    public Integer getOrderNum() {
        return orderNum;
    }

    public void setOrderNum(Integer orderNum) {
        this.orderNum = orderNum;
    }

    @Basic
    @Column(name = "title_num")
    public Integer getTitleNum() {
        return titleNum;
    }

    public void setTitleNum(Integer titleNum) {
        this.titleNum = titleNum;
    }

    @Basic
    @Column(name = "option_grade")
    public BigDecimal getOptionGrade() {
        return optionGrade;
    }

    public void setOptionGrade(BigDecimal optionGrade) {
        this.optionGrade = optionGrade;
    }

    @Basic
    @Column(name = "title_content")
    public String getTitleContent() {
        return titleContent;
    }

    public void setTitleContent(String titleContent) {
        this.titleContent = titleContent;
    }

    @Basic
    @Column(name = "write_flag")
    public Byte getWriteFlag() {
        return writeFlag;
    }

    public void setWriteFlag(Byte writeFlag) {
        this.writeFlag = writeFlag;
    }

    @Basic
    @Column(name = "relate_code_id")
    public String getRelateCodeId() {
        return relateCodeId;
    }

    public void setRelateCodeId(String relateCodeId) {
        this.relateCodeId = relateCodeId;
    }

    @Basic
    @Column(name = "skip_flag")
    public Byte getSkipFlag() {
        return skipFlag;
    }

    public void setSkipFlag(Byte skipFlag) {
        this.skipFlag = skipFlag;
    }

    @Basic
    @Column(name = "display_logic_flag")
    public Byte getDisplayLogicFlag() {
        return displayLogicFlag;
    }

    public void setDisplayLogicFlag(Byte displayLogicFlag) {
        this.displayLogicFlag = displayLogicFlag;
    }

    @Basic
    @Column(name = "display_flag")
    public Byte getDisplayFlag() {
        return displayFlag;
    }

    public void setDisplayFlag(Byte displayFlag) {
        this.displayFlag = displayFlag;
    }

    @Basic
    @Column(name = "layout")
    public Byte getLayout() {
        return layout;
    }

    public void setLayout(Byte layout) {
        this.layout = layout;
    }

    @Basic
    @Column(name = "max_options")
    public Byte getMaxOptions() {
        return maxOptions;
    }

    public void setMaxOptions(Byte maxOptions) {
        this.maxOptions = maxOptions;
    }

    @Basic
    @Column(name = "min_options")
    public Byte getMinOptions() {
        return minOptions;
    }

    public void setMinOptions(Byte minOptions) {
        this.minOptions = minOptions;
    }

    @Basic
    @Column(name = "dict_id")
    public String getDictId() {
        return dictId;
    }

    public void setDictId(String dictId) {
        this.dictId = dictId;
    }

    @Basic
    @Column(name = "dict_select_method")
    public Byte getDictSelectMethod() {
        return dictSelectMethod;
    }

    public void setDictSelectMethod(Byte dictSelectMethod) {
        this.dictSelectMethod = dictSelectMethod;
    }

    @Basic
    @Column(name = "option_modify_flag")
    public Byte getOptionModifyFlag() {
        return optionModifyFlag;
    }

    public void setOptionModifyFlag(Byte optionModifyFlag) {
        this.optionModifyFlag = optionModifyFlag;
    }

    @Basic
    @Column(name = "answer_type")
    public Byte getAnswerType() {
        return answerType;
    }

    public void setAnswerType(Byte answerType) {
        this.answerType = answerType;
    }

    @Basic
    @Column(name = "data_up_limit")
    public String getDataUpLimit() {
        return dataUpLimit;
    }

    public void setDataUpLimit(String dataUpLimit) {
        this.dataUpLimit = dataUpLimit;
    }

    @Basic
    @Column(name = "data_down_limit")
    public String getDataDownLimit() {
        return dataDownLimit;
    }

    public void setDataDownLimit(String dataDownLimit) {
        this.dataDownLimit = dataDownLimit;
    }

    @Basic
    @Column(name = "write_tips")
    public String getWriteTips() {
        return writeTips;
    }

    public void setWriteTips(String writeTips) {
        this.writeTips = writeTips;
    }

    @Basic
    @Column(name = "write_outward_type")
    public Byte getWriteOutwardType() {
        return writeOutwardType;
    }

    public void setWriteOutwardType(Byte writeOutwardType) {
        this.writeOutwardType = writeOutwardType;
    }

    @Basic
    @Column(name = "write_width")
    public String getWriteWidth() {
        return writeWidth;
    }

    public void setWriteWidth(String writeWidth) {
        this.writeWidth = writeWidth;
    }

    @Basic
    @Column(name = "write_height")
    public String getWriteHeight() {
        return writeHeight;
    }

    public void setWriteHeight(String writeHeight) {
        this.writeHeight = writeHeight;
    }

    @Basic
    @Column(name = "rank_type")
    public Byte getRankType() {
        return rankType;
    }

    public void setRankType(Byte rankType) {
        this.rankType = rankType;
    }

    @Basic
    @Column(name = "upload_file_type")
    public String getUploadFileType() {
        return uploadFileType;
    }

    public void setUploadFileType(String uploadFileType) {
        this.uploadFileType = uploadFileType;
    }

    @Basic
    @Column(name = "upload_filesize_limit")
    public String getUploadFilesizeLimit() {
        return uploadFilesizeLimit;
    }

    public void setUploadFilesizeLimit(String uploadFilesizeLimit) {
        this.uploadFilesizeLimit = uploadFilesizeLimit;
    }

    @Basic
    @Column(name = "upload_num_limit")
    public Byte getUploadNumLimit() {
        return uploadNumLimit;
    }

    public void setUploadNumLimit(Byte uploadNumLimit) {
        this.uploadNumLimit = uploadNumLimit;
    }

    @Basic
    @Column(name = "matrix_ranks_num")
    public String getMatrixRanksNum() {
        return matrixRanksNum;
    }

    public void setMatrixRanksNum(String matrixRanksNum) {
        this.matrixRanksNum = matrixRanksNum;
    }

    @Basic
    @Column(name = "matrix_num_flag")
    public Byte getMatrixNumFlag() {
        return matrixNumFlag;
    }

    public void setMatrixNumFlag(Byte matrixNumFlag) {
        this.matrixNumFlag = matrixNumFlag;
    }

    @Basic
    @Column(name = "matrix_col_title")
    public String getMatrixColTitle() {
        return matrixColTitle;
    }

    public void setMatrixColTitle(String matrixColTitle) {
        this.matrixColTitle = matrixColTitle;
    }

    @Basic
    @Column(name = "matrix_row_title")
    public String getMatrixRowTitle() {
        return matrixRowTitle;
    }

    public void setMatrixRowTitle(String matrixRowTitle) {
        this.matrixRowTitle = matrixRowTitle;
    }

    @Basic
    @Column(name = "create_id")
    public Integer getCreateId() {
        return createId;
    }

    public void setCreateId(Integer createId) {
        this.createId = createId;
    }

    @Basic
    @Column(name = "create_time")
    public Timestamp getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Timestamp createTime) {
        this.createTime = createTime;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }

        EditorQuestionnaireTitleEntity that = (EditorQuestionnaireTitleEntity) o;

        if (widgetType != that.widgetType) {
            return false;
        }
        if (titleId != null ? !titleId.equals(that.titleId) : that.titleId != null) {
            return false;
        }
        if (questionnaireId != null ? !questionnaireId.equals(that.questionnaireId) : that.questionnaireId != null) {
            return false;
        }
        if (titleName != null ? !titleName.equals(that.titleName) : that.titleName != null) {
            return false;
        }
        if (orderNum != null ? !orderNum.equals(that.orderNum) : that.orderNum != null) {
            return false;
        }
        if (titleNum != null ? !titleNum.equals(that.titleNum) : that.titleNum != null) {
            return false;
        }
        if (optionGrade != null ? !optionGrade.equals(that.optionGrade) : that.optionGrade != null) {
            return false;
        }
        if (titleContent != null ? !titleContent.equals(that.titleContent) : that.titleContent != null) {
            return false;
        }
        if (writeFlag != null ? !writeFlag.equals(that.writeFlag) : that.writeFlag != null) {
            return false;
        }
        if (relateCodeId != null ? !relateCodeId.equals(that.relateCodeId) : that.relateCodeId != null) {
            return false;
        }
        if (skipFlag != null ? !skipFlag.equals(that.skipFlag) : that.skipFlag != null) {
            return false;
        }
        if (displayLogicFlag != null ? !displayLogicFlag.equals(that.displayLogicFlag) : that.displayLogicFlag != null) {
            return false;
        }
        if (displayFlag != null ? !displayFlag.equals(that.displayFlag) : that.displayFlag != null) {
            return false;
        }
        if (layout != null ? !layout.equals(that.layout) : that.layout != null) {
            return false;
        }
        if (maxOptions != null ? !maxOptions.equals(that.maxOptions) : that.maxOptions != null) {
            return false;
        }
        if (minOptions != null ? !minOptions.equals(that.minOptions) : that.minOptions != null) {
            return false;
        }
        if (dictId != null ? !dictId.equals(that.dictId) : that.dictId != null) {
            return false;
        }
        if (dictSelectMethod != null ? !dictSelectMethod.equals(that.dictSelectMethod) : that.dictSelectMethod != null) {
            return false;
        }
        if (optionModifyFlag != null ? !optionModifyFlag.equals(that.optionModifyFlag) : that.optionModifyFlag != null) {
            return false;
        }
        if (answerType != null ? !answerType.equals(that.answerType) : that.answerType != null) {
            return false;
        }
        if (dataUpLimit != null ? !dataUpLimit.equals(that.dataUpLimit) : that.dataUpLimit != null) {
            return false;
        }
        if (dataDownLimit != null ? !dataDownLimit.equals(that.dataDownLimit) : that.dataDownLimit != null) {
            return false;
        }
        if (writeTips != null ? !writeTips.equals(that.writeTips) : that.writeTips != null) {
            return false;
        }
        if (writeOutwardType != null ? !writeOutwardType.equals(that.writeOutwardType) : that.writeOutwardType != null) {
            return false;
        }
        if (writeWidth != null ? !writeWidth.equals(that.writeWidth) : that.writeWidth != null) {
            return false;
        }
        if (writeHeight != null ? !writeHeight.equals(that.writeHeight) : that.writeHeight != null) {
            return false;
        }
        if (rankType != null ? !rankType.equals(that.rankType) : that.rankType != null) {
            return false;
        }
        if (uploadFileType != null ? !uploadFileType.equals(that.uploadFileType) : that.uploadFileType != null) {
            return false;
        }
        if (uploadFilesizeLimit != null ? !uploadFilesizeLimit.equals(that.uploadFilesizeLimit) : that.uploadFilesizeLimit != null) {
            return false;
        }
        if (uploadNumLimit != null ? !uploadNumLimit.equals(that.uploadNumLimit) : that.uploadNumLimit != null) {
            return false;
        }
        if (matrixRanksNum != null ? !matrixRanksNum.equals(that.matrixRanksNum) : that.matrixRanksNum != null) {
            return false;
        }
        if (matrixNumFlag != null ? !matrixNumFlag.equals(that.matrixNumFlag) : that.matrixNumFlag != null) {
            return false;
        }
        if (matrixColTitle != null ? !matrixColTitle.equals(that.matrixColTitle) : that.matrixColTitle != null) {
            return false;
        }
        if (matrixRowTitle != null ? !matrixRowTitle.equals(that.matrixRowTitle) : that.matrixRowTitle != null) {
            return false;
        }
        if (createId != null ? !createId.equals(that.createId) : that.createId != null) {
            return false;
        }
        if (createTime != null ? !createTime.equals(that.createTime) : that.createTime != null) {
            return false;
        }

        return true;
    }

    @Override
    public int hashCode() {
        int result = titleId != null ? titleId.hashCode() : 0;
        result = 31 * result + (questionnaireId != null ? questionnaireId.hashCode() : 0);
        result = 31 * result + (int) widgetType;
        result = 31 * result + (titleName != null ? titleName.hashCode() : 0);
        result = 31 * result + (orderNum != null ? orderNum.hashCode() : 0);
        result = 31 * result + (titleNum != null ? titleNum.hashCode() : 0);
        result = 31 * result + (optionGrade != null ? optionGrade.hashCode() : 0);
        result = 31 * result + (titleContent != null ? titleContent.hashCode() : 0);
        result = 31 * result + (writeFlag != null ? writeFlag.hashCode() : 0);
        result = 31 * result + (relateCodeId != null ? relateCodeId.hashCode() : 0);
        result = 31 * result + (skipFlag != null ? skipFlag.hashCode() : 0);
        result = 31 * result + (displayLogicFlag != null ? displayLogicFlag.hashCode() : 0);
        result = 31 * result + (displayFlag != null ? displayFlag.hashCode() : 0);
        result = 31 * result + (layout != null ? layout.hashCode() : 0);
        result = 31 * result + (maxOptions != null ? maxOptions.hashCode() : 0);
        result = 31 * result + (minOptions != null ? minOptions.hashCode() : 0);
        result = 31 * result + (dictId != null ? dictId.hashCode() : 0);
        result = 31 * result + (dictSelectMethod != null ? dictSelectMethod.hashCode() : 0);
        result = 31 * result + (optionModifyFlag != null ? optionModifyFlag.hashCode() : 0);
        result = 31 * result + (answerType != null ? answerType.hashCode() : 0);
        result = 31 * result + (dataUpLimit != null ? dataUpLimit.hashCode() : 0);
        result = 31 * result + (dataDownLimit != null ? dataDownLimit.hashCode() : 0);
        result = 31 * result + (writeTips != null ? writeTips.hashCode() : 0);
        result = 31 * result + (writeOutwardType != null ? writeOutwardType.hashCode() : 0);
        result = 31 * result + (writeWidth != null ? writeWidth.hashCode() : 0);
        result = 31 * result + (writeHeight != null ? writeHeight.hashCode() : 0);
        result = 31 * result + (rankType != null ? rankType.hashCode() : 0);
        result = 31 * result + (uploadFileType != null ? uploadFileType.hashCode() : 0);
        result = 31 * result + (uploadFilesizeLimit != null ? uploadFilesizeLimit.hashCode() : 0);
        result = 31 * result + (uploadNumLimit != null ? uploadNumLimit.hashCode() : 0);
        result = 31 * result + (matrixRanksNum != null ? matrixRanksNum.hashCode() : 0);
        result = 31 * result + (matrixNumFlag != null ? matrixNumFlag.hashCode() : 0);
        result = 31 * result + (matrixColTitle != null ? matrixColTitle.hashCode() : 0);
        result = 31 * result + (matrixRowTitle != null ? matrixRowTitle.hashCode() : 0);
        result = 31 * result + (createId != null ? createId.hashCode() : 0);
        result = 31 * result + (createTime != null ? createTime.hashCode() : 0);
        return result;
    }
}
